When developers create programs for software systems they often use code files that are then assembled into the final executable software. The code file(s) may be previously existing source code written for another project or program, or the code file(s) may be developed for the program currently being created. The developer will define how the software should be built from the code. This definition is tied to a particular operating system or other platform, and is embodied in one or more files sometimes called make files or build files.
In order for the program to be portable between platforms, build files dedicated to all relevant operating systems must be created. For example, to build a Microsoft Windows executable file (having the file type .exe), one can use the Visual Studio program from Microsoft Corp. As another example, to compile on Linux, one can use GNU make files.